package com.blade.excel;

import org.apache.poi.hssf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;

/**
 * 创建一个空的xls文件
 */
public class ExcelSample1 {
    public static void main(String[] strings) throws IOException {
        HSSFWorkbook wb = new HSSFWorkbook(); // 创建一个excel文件
        HSSFSheet sheet = wb.createSheet(); // 创建一个sheet对象

        // 在sheet里创建一行，参数0就是行号，0开始
        HSSFRow row = sheet.createRow(0);

        // 在行里创建新的cell单元格，参数为列号，1开始
        HSSFCell cell = row.createCell(0);

        cell.setCellValue(1);
        row.createCell(1).setCellValue(1.2);
        row.createCell(2).setCellValue("test");
        row.createCell(3).setCellValue(true);

        // 创建新的cell样式
        HSSFCellStyle cellStyle = wb.createCellStyle();
        cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm"));

        HSSFCell dCell = row.createCell(4);
        dCell.setCellValue(new Date());
        // 设置cell的样式为定制的日期格式
        dCell.setCellStyle(cellStyle);

        HSSFCell csCell = row.createCell(5);

        // 设置cell编码解决中文高位字节截断，这个在新版poi jar已经删掉了，自动处理了
//        csCell.setEncoding(HSSFCell.ENCODING_UTF_16);
        // 设置cell的样式为定制的日期格式

        // 设置中西文结合字符串
        csCell.setCellValue("中文测试_Chinese Words Test");

        // 建立错误cell
        row.createCell(6).setCellType(HSSFCell.CELL_TYPE_ERROR);

        FileOutputStream fileOut = new FileOutputStream("c:\\workbook.xls");
        wb.write(fileOut);
        fileOut.close();

    }
}
